Semantic‐aware two‐phase test case prioritization for continuous integration

نویسندگان

چکیده

Summary Continuous integration (CI) is a widely applied development practice to allow frequent of software changes, detecting early faults. However, extremely builds consume amounts time and resources in such scenario. It quite challenging for existing test case prioritization (TCP) address this issue due the time‐consuming information collection (e.g. coverage) or inaccurately modelling code semantics result unsatisfied prioritization. In paper, we propose semantic‐aware two‐phase TCP framework, named SatTCP, which combines coarse‐grained filtering fine‐grained perform precise with low costs CI. consists three parts: (1) representation, parsing programme changes cases obtain change representations; (2) filtering, conducting preliminary ranking based on retrieval; (3) prioritization, training pretrained Siamese language model filtered set further sort via semantic similarity. We evaluate SatTCP large‐scale, real‐world dataset cross‐project validation from fault detection efficiency compare it five baselines. The results show that outperforms all baselines by 6.3%–45.6% mean average percentage detected per cost (APFDc), representing an obvious upward trend as project scale increases. Meanwhile, can reduce real CI testing 71.4%, outperforming best baseline 17.2% average. Furthermore, discuss impact different configurations, flaky tests hybrid techniques performance respectively.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Test Case Prioritization

Test case prioritization techniques involve scheduling over test cases in an order that improves the performance of regression testing. It is inefficient to re execute every test cases for every program function if once change occurs. Test case prioritization techniques organize the test cases in a test suite by ordering such that the most beneficial are executed first thus allowing for an incr...

متن کامل

Hypervolume-Based Search for Test Case Prioritization

Test case prioritization (TCP) is aimed at finding an ideal ordering for executing the available test cases to reveal faults earlier. To solve this problem greedy algorithms and meta-heuristics have been widely investigated, but in most cases there is no statistically significant difference between them in terms of effectiveness. The fitness function used to guide meta-heuristics condenses the ...

متن کامل

Test Case Prioritization in Regression Test

In this proposal, we describe a method to do test case prioritization in regression test.

متن کامل

A New Technique for Test Case Prioritization

Software testing is important phase of software development life cycle which ensure the developer that the developed software work according to specifications or not. To make testing efficient and effective a techniques of test case prioritization are used. A well-organized Test case prioritization technique reduces the cost of testing and fault detection capabilities of testing. We will go to ...

متن کامل

Requirements-Based Test Case Prioritization

Test case prioritization techniques have been shown to improve regression-testing activities by increasing the rate of fault detection, thus allowing testers to fix faults earlier. The current techniques, mostly code coveragebased, treat all faults equally. We build upon this work to develop a prioritization scheme with two main goals: identifying the severe faults earlier and minimizing the co...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Software Testing, Verification & Reliability

سال: 2023

ISSN: ['1099-1689', '0960-0833']

DOI: https://doi.org/10.1002/stvr.1864